
`timescale 1ns / 1ps

module q_reg(
	clk,
	i_ld_en,
	i_data,
	o_data
);

parameter DATA_WIDTH = 32;

input clk;
input i_ld_en;

input [DATA_WIDTH-1:0] i_data;

output [DATA_WIDTH-1:0] o_data;
reg [DATA_WIDTH-1:0] o_data;

always@( posedge clk )
begin
	if( i_ld_en ) begin
		o_data <= i_data;
	end
end

endmodule
